- finder = controller.controller_name == 'issues' ? issues_finder : merge_requests_finder
- boards_page = controller.controller_name == 'boards'

.issues-filters
  .issues-details-filters.row-content-block.second-block
    = form_tag page_filter_path(without: [:assignee_id, :author_id, :milestone_title, :label_name, :search]), method: :get, class: 'filter-form js-filter-form' do
      - if params[:search].present?
        = hidden_field_tag :search, params[:search]
      .issues-other-filters
        .filter-item.inline
          - if params[:author_id].present?
            = hidden_field_tag(:author_id, params[:author_id])
          = dropdown_tag(user_dropdown_label(params[:author_id], "Author"), options: { toggle_class: "js-user-search js-filter-submit js-author-search", title: "Filter by author", filter: true, dropdown_class: "dropdown-menu-user dropdown-menu-selectable dropdown-menu-author js-filter-submit",
            placeholder: "Search authors", data: { any_user: "Any Author", first_user: current_user.try(:username), current_user: true, project_id: @project.try(:id), selected: params[:author_id], field_name: "author_id", default_label: "Author" } })

        .filter-item.inline
          - if params[:assignee_id].present?
            = hidden_field_tag(:assignee_id, params[:assignee_id])
          = dropdown_tag(user_dropdown_label(params[:assignee_id], "Assignee"), options: { toggle_class: "js-user-search js-filter-submit js-assignee-search", title: "Filter by assignee", filter: true, dropdown_class: "dropdown-menu-user dropdown-menu-selectable dropdown-menu-assignee js-filter-submit",
            placeholder: "Search assignee", data: { any_user: "Any Assignee", first_user: current_user.try(:username), null_user: true, current_user: true, project_id: @project.try(:id), group_id: @group&.id, selected: params[:assignee_id], field_name: "assignee_id", default_label: "Assignee" } })

        .filter-item.inline.milestone-filter
          = render "shared/issuable/milestone_dropdown", selected: finder.milestones.try(:first), name: :milestone_title, show_any: true, show_upcoming: true, show_started: true

        .filter-item.inline.labels-filter
          = render "shared/issuable/label_dropdown", selected: finder.labels.select(:title).uniq, use_id: false, selected_toggle: params[:label_name], data_options: { field_name: "label_name[]" }

        - if issuable_filter_present?
          .filter-item.inline.reset-filters
            %a{ href: page_filter_path(without: issuable_filter_params) } Reset filters

        .pull-right
          = render 'shared/sort_dropdown'

  - has_labels = @labels && @labels.any?
  .row-content-block.second-block.filtered-labels{ class: ("hidden" unless has_labels) }
    - if has_labels
      = render 'shared/labels_row', labels: @labels

:javascript
  new LabelsSelect();
  new MilestoneSelect();
  new IssueStatusSelect();
  new SubscriptionSelect();
  $('form.filter-form').on('submit', function (event) {
    event.preventDefault();
    gl.utils.visitUrl(this.action + '&' + $(this).serialize());
  });
